#ifndef DEF_BSPLINE
#define DEF_BSPLINE

/*
#ifdef WIN32
#include <GL/glew.h>
#else
#define GL3_PROTOTYPES 1
#include <GL3/gl3.h>
#endif
*/

#include "Line.h"
#include <iostream>

class BSpline : public Line
{
public :
	BSpline();
	BSpline(float* vertex, int nbPoints, int degree, int resolution);
	~BSpline();

	//Extrusions
	//Object3D* simpleExtrusion(int iteration, float distance, float xAxis, float yAxis, float zAxis);

protected :
	//Compute spline
	void computePassagePoints(float* vertex, int nbPoints, int degree, const int resolution);
	int* computeIntervals(int nbPoints, int degree);
	float* bSplineValue(int* intervals, int nbPoints, int degree, float value, float* vertex);
	float computePoint(int step, int degree, int* intervals, float value);

	


private :



};
#endif